package org.dromara.comm_lhz.controller;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.dromara.comm_lhz.entity.AsCouponEntity;
import org.dromara.comm_lhz.entity.dto.AsCouponDto;
import org.dromara.comm_lhz.service.AsCouponHService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

/**
 * 优惠卷控制器，提供对优惠卷信息的增删改查操作
 */
@RestController
@RequestMapping("/coupon")
public class AsCouponHController {
    @Autowired
    private AsCouponHService asCouponHService;

    /**
     * 获取优惠卷信息
     *
     * @param asCouponDto 用于查询的优惠卷信息DTO
     * @return 返回分页的优惠卷信息
     */
    @GetMapping("/getCoupon")
    public Page<AsCouponEntity> getCoupon(AsCouponDto asCouponDto) {
        return asCouponHService.getCoupon(asCouponDto);
    }

    /**
     * 添加优惠卷
     *
     * @param asCouponEntity 待添加的优惠卷实体
     */
    @PostMapping("/addCoupon")
    public void addCoupon(@RequestBody AsCouponEntity asCouponEntity) {
        asCouponHService.addCoupon(asCouponEntity);
    }

    /**
     * 修改优惠卷
     *
     * @param asCouponEntity 待修改的优惠卷实体
     */
    @PostMapping("/updateCoupon")
    public void updateCoupon(@RequestBody AsCouponEntity asCouponEntity) {
        asCouponHService.updateById(asCouponEntity);
    }

    /**
     * 删除优惠卷
     *
     * @param asCouponEntity 待删除的优惠卷实体
     */
    @PostMapping("/deleteCoupon")
    public void deleteCoupon(@RequestBody AsCouponEntity asCouponEntity) {
        asCouponHService.removeById(asCouponEntity.getId());
    }
}
